This SDK contains the information you need to take advantage of or extend the functionality of Network Services Location 1.0.
READ ME CONTENTS
Introduction
Requirements
Contents of the SDK
Installation & Setup Instructions
Additional API calls not included in the documentation
NSL Demo Tool
Developer Support
Introduction
With the introduction of the Chooser and AppleTalk, Apple offered unprecedented ease-of-use by allowing users to browse for network services such as printers and file servers. With the introduction of the Network Services Location (NSL) Technology, Apple is bringing that ease-of-use to the Internet by providing the ability to browse through Internet services such as FTP and HTTP via TCP/IP similarly to the way users traditionally browse for AppleTalk services using the Chooser. NSL provides a protocol-independent way for applications to discover available network services with minimal network traffic. By adopting this technology, applications can provide a better end user experience for users looking for network services. Within this SDK, you will find detailed developer documentation, interfaces, libraries and sample code that will allow you to develop your applications and plug-ins using the NSL APIs.
Please read through this entire Read Me file for required development environment specifications, installation instructions, etc. Please refer to the accompanying developer documentation for further detail on using the NSL software and APIs.
Requirements
For development purposes, this software requires a PowerPC running system software Mac OS 8.0 or later and Open Transport 1.2 or later. The NSL 1.0 product will only be available and qualified with Mac OS 8.5, which includes Open Transport 2.0.
Contents of the SDK
• NSL 1.0 SDK Read Me (this document)
• NSL Manager, DNS and SLP plug-ins.
• Final revision of the NSL Developer Documentation
• Final revision of the NSL Network Administrator's Guide
• NSL Demo Tool
• NSLAPI SampleTest application and source code
• NSL Header files
Installing the NSL SDK
1. For Pre-Mac OS 8.5 systems, drag the NSL shared library (file name "NSLPPCLib") and the two NSL plug-ins (file names "NDSPlugin", "SLPPlugin") to the Extensions folder inside the System Folder.
2. Restart your computer. Restarting is highly recommended to be certain that the correct libraries are loaded when the NSL application is launched.
Setting up DNS Servers
To test with a DNS server, enter data as DNS TXT records. Each line consists of a URL. The format of the text record is as follows:
<hostname> <TTL> TXT <URL>
To avoid time out problems, make sure the nameserver specified in the TCP/IP control panel is active and reachable.
Additional API calls and comments not included in the documentation
The following API call in "NSLAPI.h" is not included in the "NSL Developer Documentation.pdf" file:
This call will set the pointer contained in "name" to point to a null terminated "cstring" containing the textual name of a neighborhood. This call allocates memory and the user must call DisposePtr on the result (if not nil).
It is important that you set the value of *urlPtr to nil the first time you call this function with new results. For example:
Ptr newURL = nil;
NSLGetNextURL( infoPtr, &newURL, &urlLen );
This is because the manager uses the value of this pointer to determine state information while it is parsing your result buffer.
NSL Demo Tool
The NSL Demo Tool is a representation of how to browse and select services via TCP/IP and is not intended as the final user interface for NSL capabilities. The NSL Demo is a sampling of the NSL technology and the new capabilities offered with the NSL product now available to customers.
Developer Support
If you have questions regarding the NSL 1.0 SDK package, please send these to dts@apple.com. For further developer support, refer to the Apple Developer web site located at http://www.apple.com/developer.